<ui:composition template="/app/template/layout.xhtml"
	xmlns="http://www.w3.org/1999/xhtml"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:p="http://primefaces.org/ui">
	<ui:define name="content">
		<p:panel header="Gestione prodotti">
			<p>In caso di modifica i prezzi vanno inseriti in centesimi di €
				(senza usare ne virgole ne punti).</p>
			<h:form id="gestioneProdottiForm">
				<p:messages id="messaggesGestioneProdotti" autoUpdate="true" />
				<p:confirmDialog global="true">
					<p:commandButton value="Sì" type="button"
						styleClass="ui-confirmdialog-yes" icon="ui-icon-check" />
					<p:commandButton value="No" type="button"
						styleClass="ui-confirmdialog-no" icon="ui-icon-close" />
				</p:confirmDialog>
				<p:dataTable id="gestioneProdottiTable" var="prodotto"
					value="#{prodottiBean.prodottiDTOList}" editable="true">
					<p:ajax event="rowEdit" listener="#{prodottiBean.modificaProdotto}" />
					<p:column headerText="Tipologia" sortBy="tipologia">
						<p:cellEditor>
							<f:facet name="output">
								<h:outputText value="#{prodotto.tipologia.label}" />
							</f:facet>
							<f:facet name="input">
								<p:selectOneMenu value="#{prodotto.tipologia}">
									<f:selectItems value="#{prodottiBean.tipologiaProdottoValues}"
										var="tipo" itemValue="#{tipo}" itemLabel="#{tipo.label}" />
								</p:selectOneMenu>
							</f:facet>
						</p:cellEditor>
					</p:column>
					<p:column headerText="Nome" sortBy="nome">
						<p:cellEditor>
							<f:facet name="output">
								<h:outputText value="#{prodotto.nome}" />
							</f:facet>
							<f:facet name="input">
								<h:inputText value="#{prodotto.nome}" />
							</f:facet>
						</p:cellEditor>
					</p:column>
					<p:column headerText="Descrizione" sortBy="descrizione">
						<p:cellEditor>
							<f:facet name="output">
								<h:outputText value="#{prodotto.descrizione}" style="white-space: pre-line;" />
							</f:facet>
							<f:facet name="input">
								<h:inputTextarea width="100%" autoResize="true" value="#{prodotto.descrizione}" />
							</f:facet>
						</p:cellEditor>
					</p:column>
					<p:column headerText="Prezzo unitario" sortBy="prezzoUnitario">
						<p:cellEditor>
							<f:facet name="output">
								<h:outputText value="#{prodotto.prezzoUnitario/100}">
									<f:convertNumber currencySymbol="€" type="currency" />
								</h:outputText>
							</f:facet>
							<f:facet name="input">
								<h:inputText value="#{prodotto.prezzoUnitario}" />
							</f:facet>
						</p:cellEditor>
					</p:column>
					<p:column headerText="Modifica">
						<p:rowEditor />
					</p:column>
					<p:column headerText="Elimina">
						<p:commandButton icon="ui-icon-trash"
							actionListener="#{prodottiBean.eliminaProdotto(prodotto)}"
							update="gestioneProdottiTable">
							<p:confirm header="Conferma"
								message="Sei sicuro di voler cancellare questo prodotto?"
								icon="ui-icon-alert" />
						</p:commandButton>
					</p:column>
				</p:dataTable>
			</h:form>
		</p:panel>
	</ui:define>
</ui:composition>